(0) Obligation:

Runtime Complexity TRS:
The TRS R consists of the following rules:

and(x, or(y, z)) → or(and(x, y), and(x, z))
and(x, and(y, y)) → and(x, y)
or(or(x, y), and(y, z)) → or(x, y)
or(x, and(x, y)) → x
or(true, y) → true
or(x, false) → x
or(x, x) → x
or(x, or(y, y)) → or(x, y)
and(x, true) → x
and(false, y) → false
and(x, x) → x

Rewrite Strategy: INNERMOST

(1) CpxTrsToCdtProof (BOTH BOUNDS(ID, ID) transformation)

Converted CpxTRS to CDT

(2) Obligation:

Complexity Dependency Tuples Problem
Rules:

and(z0, or(z1, z2)) → or(and(z0, z1), and(z0, z2))
and(z0, and(z1, z1)) → and(z0, z1)
and(z0, true) → z0
and(false, z0) → false
and(z0, z0) → z0
or(or(z0, z1), and(z1, z2)) → or(z0, z1)
or(z0, and(z0, z1)) → z0
or(true, z0) → true
or(z0, false) → z0
or(z0, z0) → z0
or(z0, or(z1, z1)) → or(z0, z1)
Tuples:

AND(z0, or(z1, z2)) → c(OR(and(z0, z1), and(z0, z2)), AND(z0, z1), AND(z0, z2))
AND(z0, and(z1, z1)) → c1(AND(z0, z1))
OR(or(z0, z1), and(z1, z2)) → c5(OR(z0, z1))
OR(z0, or(z1, z1)) → c10(OR(z0, z1))
S tuples:

AND(z0, or(z1, z2)) → c(OR(and(z0, z1), and(z0, z2)), AND(z0, z1), AND(z0, z2))
AND(z0, and(z1, z1)) → c1(AND(z0, z1))
OR(or(z0, z1), and(z1, z2)) → c5(OR(z0, z1))
OR(z0, or(z1, z1)) → c10(OR(z0, z1))
K tuples:none
Defined Rule Symbols:

and, or

Defined Pair Symbols:

AND, OR

Compound Symbols:

c, c1, c5, c10

(3) CdtLeafRemovalProof (ComplexityIfPolyImplication transformation)

Removed 2 leading nodes:

AND(z0, and(z1, z1)) → c1(AND(z0, z1))
OR(z0, or(z1, z1)) → c10(OR(z0, z1))

(4) Obligation:

Complexity Dependency Tuples Problem
Rules:

and(z0, or(z1, z2)) → or(and(z0, z1), and(z0, z2))
and(z0, and(z1, z1)) → and(z0, z1)
and(z0, true) → z0
and(false, z0) → false
and(z0, z0) → z0
or(or(z0, z1), and(z1, z2)) → or(z0, z1)
or(z0, and(z0, z1)) → z0
or(true, z0) → true
or(z0, false) → z0
or(z0, z0) → z0
or(z0, or(z1, z1)) → or(z0, z1)
Tuples:

AND(z0, or(z1, z2)) → c(OR(and(z0, z1), and(z0, z2)), AND(z0, z1), AND(z0, z2))
OR(or(z0, z1), and(z1, z2)) → c5(OR(z0, z1))
S tuples:

AND(z0, or(z1, z2)) → c(OR(and(z0, z1), and(z0, z2)), AND(z0, z1), AND(z0, z2))
OR(or(z0, z1), and(z1, z2)) → c5(OR(z0, z1))
K tuples:none
Defined Rule Symbols:

and, or

Defined Pair Symbols:

AND, OR

Compound Symbols:

c, c5

(5) CdtPolyRedPairProof (UPPER BOUND (ADD(O(n^1))) transformation)

Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S.

AND(z0, or(z1, z2)) → c(OR(and(z0, z1), and(z0, z2)), AND(z0, z1), AND(z0, z2))
We considered the (Usable) Rules:

and(z0, or(z1, z2)) → or(and(z0, z1), and(z0, z2))
and(false, z0) → false
and(z0, z0) → z0
and(z0, true) → z0
or(or(z0, z1), and(z1, z2)) → or(z0, z1)
or(z0, and(z0, z1)) → z0
or(true, z0) → true
or(z0, false) → z0
or(z0, z0) → z0
And the Tuples:

AND(z0, or(z1, z2)) → c(OR(and(z0, z1), and(z0, z2)), AND(z0, z1), AND(z0, z2))
OR(or(z0, z1), and(z1, z2)) → c5(OR(z0, z1))
The order we found is given by the following interpretation:
Polynomial interpretation :

POL(AND(x1, x2)) = [2]x2   
POL(OR(x1, x2)) = 0   
POL(and(x1, x2)) = [3] + [4]x1 + x2   
POL(c(x1, x2, x3)) = x1 + x2 + x3   
POL(c5(x1)) = x1   
POL(false) = [2]   
POL(or(x1, x2)) = [2] + [2]x1 + [2]x2   
POL(true) = [3]   

(6) Obligation:

Complexity Dependency Tuples Problem
Rules:

and(z0, or(z1, z2)) → or(and(z0, z1), and(z0, z2))
and(z0, and(z1, z1)) → and(z0, z1)
and(z0, true) → z0
and(false, z0) → false
and(z0, z0) → z0
or(or(z0, z1), and(z1, z2)) → or(z0, z1)
or(z0, and(z0, z1)) → z0
or(true, z0) → true
or(z0, false) → z0
or(z0, z0) → z0
or(z0, or(z1, z1)) → or(z0, z1)
Tuples:

AND(z0, or(z1, z2)) → c(OR(and(z0, z1), and(z0, z2)), AND(z0, z1), AND(z0, z2))
OR(or(z0, z1), and(z1, z2)) → c5(OR(z0, z1))
S tuples:

OR(or(z0, z1), and(z1, z2)) → c5(OR(z0, z1))
K tuples:

AND(z0, or(z1, z2)) → c(OR(and(z0, z1), and(z0, z2)), AND(z0, z1), AND(z0, z2))
Defined Rule Symbols:

and, or

Defined Pair Symbols:

AND, OR

Compound Symbols:

c, c5

(7) CdtPolyRedPairProof (UPPER BOUND (ADD(O(n^2))) transformation)

Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S.

OR(or(z0, z1), and(z1, z2)) → c5(OR(z0, z1))
We considered the (Usable) Rules:

and(z0, or(z1, z2)) → or(and(z0, z1), and(z0, z2))
and(false, z0) → false
and(z0, z0) → z0
and(z0, true) → z0
or(or(z0, z1), and(z1, z2)) → or(z0, z1)
or(z0, and(z0, z1)) → z0
or(true, z0) → true
or(z0, false) → z0
or(z0, z0) → z0
And the Tuples:

AND(z0, or(z1, z2)) → c(OR(and(z0, z1), and(z0, z2)), AND(z0, z1), AND(z0, z2))
OR(or(z0, z1), and(z1, z2)) → c5(OR(z0, z1))
The order we found is given by the following interpretation:
Polynomial interpretation :

POL(AND(x1, x2)) = [1] + x1 + x2 + x1·x2   
POL(OR(x1, x2)) = [2]x1   
POL(and(x1, x2)) = x2 + x1·x2   
POL(c(x1, x2, x3)) = x1 + x2 + x3   
POL(c5(x1)) = x1   
POL(false) = 0   
POL(or(x1, x2)) = [1] + [3]x1 + [2]x2   
POL(true) = [1]   

(8) Obligation:

Complexity Dependency Tuples Problem
Rules:

and(z0, or(z1, z2)) → or(and(z0, z1), and(z0, z2))
and(z0, and(z1, z1)) → and(z0, z1)
and(z0, true) → z0
and(false, z0) → false
and(z0, z0) → z0
or(or(z0, z1), and(z1, z2)) → or(z0, z1)
or(z0, and(z0, z1)) → z0
or(true, z0) → true
or(z0, false) → z0
or(z0, z0) → z0
or(z0, or(z1, z1)) → or(z0, z1)
Tuples:

AND(z0, or(z1, z2)) → c(OR(and(z0, z1), and(z0, z2)), AND(z0, z1), AND(z0, z2))
OR(or(z0, z1), and(z1, z2)) → c5(OR(z0, z1))
S tuples:none
K tuples:

AND(z0, or(z1, z2)) → c(OR(and(z0, z1), and(z0, z2)), AND(z0, z1), AND(z0, z2))
OR(or(z0, z1), and(z1, z2)) → c5(OR(z0, z1))
Defined Rule Symbols:

and, or

Defined Pair Symbols:

AND, OR

Compound Symbols:

c, c5

(9) SIsEmptyProof (EQUIVALENT transformation)

The set S is empty

(10) BOUNDS(O(1), O(1))